package com.csht.service;

import java.util.List;

import com.csht.model.City;
import com.csht.model.CshtBrand;
import com.csht.model.CshtGoods;
import com.csht.model.CshtGoodsImages;
import com.csht.model.CshtOneMenu;
import com.csht.model.CshtThreeMenu;
import com.csht.model.CshtTwoMenu;
import com.csht.model.Province;
import com.csht.model.School;
import com.csht.vo.goods.ThreeMenuVo;

/**
 * 发布商品service接口
 * @author chenhuiyan
 *
 */
public interface ReleaseGoodsService {

	/**
	 * 查询全部一级菜单
	 * @return
	 * @throws Exception
	 */
	public List<CshtOneMenu> getAllOneMenu() throws Exception;
	
	/**
	 * 根据一级菜单id查询二级菜单
	 * @param oneMenuId
	 * @return
	 * @throws Exception
	 */
	public List<CshtTwoMenu> getTowMenuByOneMenuId(Integer oneMenuId) throws Exception;
	
	/**
	 * 根据二级菜单id查询三级菜单
	 * @param oneMenuId
	 * @return
	 * @throws Exception
	 */
	public List<CshtThreeMenu> getThreeMenuByTwoMenuId(Integer twoMenuId) throws Exception;
	
	/**
	 * 根据一级菜单id查找品牌
	 * @param oneMenuId
	 * @return
	 * @throws Exception
	 */
	public List<CshtBrand> getBrandByOneMenuId(Integer oneMenuId) throws Exception;
	
	/**
	 * 获取全部省份
	 */
	public List<Province> getAllProvince(String provinceUrl) throws Exception;
	
	/**
	 * 根据省id获取该省全部城市
	 */
	public List<City> getAllCityByProvinceId(String cityUrl, Integer provinceId) throws Exception;
	
	/**
	 * 根据城市名获取学校
	 */
	public List<School> getAllSchoolByCityName(String schoolUrl, String cityName) throws Exception;
	
	/**
	 * 模糊搜索三级菜单
	 * @param threeMenuName
	 * @return
	 * @throws Exception
	 */
	public List<ThreeMenuVo> getMenuToSearch(String threeMenuName) throws Exception;
	
	/**
	 * 添加商品并返回主键id
	 * @param cshtGoods
	 * @throws Exception
	 */
	public void insertGoods(CshtGoods cshtGoods) throws Exception;
	
	/**
	 * 更新商品封面图
	 * @param cshtGoods
	 * @throws Exception
	 */
	public void updateGoodsImapath(CshtGoods cshtGoods) throws Exception;
	
	/**
	 * 添加商品图 
	 * @param cshtGoodsImages
	 * @throws Exception
	 */
	public void insertGoodsImages(CshtGoodsImages cshtGoodsImages) throws Exception;
	
}
